package cn.stylefeng.guns.modular.hx.storage.model.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class ManageAuditVO {
    @JsonProperty("adjust_reason_name")
    private String adjustReasonName;

    @JsonProperty("client_id")
    private Long clientId;

    @JsonProperty("client_name")
    private String clientName;

    @JsonProperty("details")
    private List<DetailDTO> details;

    @JsonProperty("fid")
    private String fid;

    @JsonProperty("memo")
    private String memo;

    @JsonProperty("order_type")
    private String orderType;

    @JsonProperty("store_id")
    private String storeId;

    @JsonProperty("storehouse_id")
    private String storehouseId;


    @Data
    public static class DetailDTO {
        @JsonProperty("basic_present_quantity")
        private BigDecimal basicPresentQuantity;

        @JsonProperty("basic_quantity")
        private String basicQuantity;

        @JsonProperty("basic_stock_quantity")
        private BigDecimal basicStockQuantity;

        @JsonProperty("basic_unit")
        private String basicUnit;

        @JsonProperty("expire_date")
        private Date expireDate;

        @JsonProperty("item_bar_code")
        private String itemBarCode;

        @JsonProperty("item_code")
        private String itemCode;

        @JsonProperty("item_id")
        private Long itemId;

        @JsonProperty("item_name")
        private String itemName;

        @JsonProperty("item_spec")
        private String itemSpec;

        @JsonProperty("memo")
        private String memo;

        @JsonProperty("present_quantity")
        private BigDecimal presentQuantity;

        @JsonProperty("present_ratio")
        private BigDecimal presentRatio;

        @JsonProperty("present_unit")
        private String presentUnit;

        @JsonProperty("producing_date")
        private Date producingDate;

        @JsonProperty("quantity")
        private String quantity;

        @JsonProperty("ratio")
        private String ratio;

        @JsonProperty("stock_quantity")
        private BigDecimal stockQuantity;

        @JsonProperty("storage_id")
        private Long storageId;

        @JsonProperty("storage_name")
        private String storageName;

        @JsonProperty("unit")
        private String unit;
    }

}
